# coding=utf-8

from celery_tasks.yuntongxun.CCPRestSDK import REST

# import ConfigParser

# 主帐号
accountSid = '8aaf0708751c249f017543b593ac0d27'

# 主帐号Token
accountToken = 'a2bfa51515ec448fbc918f0e0aa1ce84'

# 应用Id
appId = '8a216da8751c49c7017543b971000caa'

# 请求地址，格式如下，不需要写http://, 不要改变这是发送短信服务器ip, 云通讯固定的ip
serverIP = 'app.cloopen.com'

# 请求端口, 不要改变这是发送短信服务器port, 云通讯固定的port
serverPort = '8883'

# REST版本号
softVersion = '2013-12-26'


# 发送模板短信
# @param to 手机号码
# @param datas 内容数据 格式为数组 例如：{'12','34'}，如不需替换请填 ''
# @param $tempId 模板Id


class CCP(object):
    '''自己封装的发送短信的辅助类'''
    # 用来保存对象的类属性
    instance = None

    def __new__(cls):
        # 判断CCP类有没有已经创建好的对象
        if cls.instance is None:
            obj = super(CCP, cls).__new__(cls)

            # 初始化REST SDK
            obj.rest = REST(serverIP, serverPort, softVersion)
            obj.rest.setAccount(accountSid, accountToken)
            obj.rest.setAppId(appId)

            cls.instance = obj

        return cls.instance

    def send_Template_sms(self, to, datas, temp_Id):
        # 初始化REST SDK

        result = self.rest.sendTemplateSMS(to, datas, temp_Id)
        for k, v in result.items():

            if k == 'templateSMS':
                for k, s in v.items():
                    print('%s:%s' % (k, s))
            else:
                print('%s:%s' % (k, v))

                # sendTemplateSMS(手机号码,内容数据,模板Id)


# if __name__ == "__main__":
#     ccp = CCP()
#     # 1代表模板ID，下载SDK的官网api文档有说明
# 	# 这里填测试号码 免费发送短信  填的不是测试号码收短信费用
#     ret = ccp.send_Template_sms("15839788019", ["88888", 5], 1)
#
#     print(ret)